An Ethernet virtual private network (EVPN) refers to a technology that is implemented based on an Internet Protocol (IP) and multiprotocol label switching (MPLS), and is used to connect customer sites in different areas, so that users in the customer sites in the different areas can work just like in a same site, where the customer site may be a local area network (LAN).
The EVPN includes an IP/MPLS bearer network of an operator and multiple customer sites, and all the customer sites are independent of each other, and can interwork each other only by using the IP/MPLS bearer network. For the convenience of understanding, FIG. 1 gives a schematic structural diagram of an EVPN, where a service provider edge (PE) device is an edge device that is on the bearer network, is connected to a customer site, and provides a VPN service, and is a start point or an end point of a VPN service. The PE device may be a PE router, and is referred to as PE for short below in this application. A customer edge (CE) device provides, for a user in a customer site, a connection to the PE, and is referred to as CE for short below in this application. Site 1 to Site 5 in FIG. 1 are 5 different customer sites separately, and each customer site is connected to a PE in the bearer network through a CE. Site 1 and Site 4 form an EVPN A by using the bearer network, and Site 2, Site 3, and Site 5 form an EVPN B by using the bearer network. For a packet, an ingress (Ingress) PE is a PE that is connected to a CE in a customer site in which a transmitter of the packet is located, and sends the packet to the bearer network; an egress (Egress) PE is a PE that is connected to a CE in a customer site in which a receiver of the packet is located. For example, for a packet sent by a user A to a user E, a PE 1 is an Ingress PE, and a PE 3 is an Egress PE. If one PE is connected to multiple customer sites belonging to different EVPNs, processing, such as forwarding packets sent by customer sites belonging to different EVPNs is separately implemented on the PE by using a corresponding EVPN instance (EVI). The Ingress PE and the Egress PE are PEs in a same EVI.
Packet forwarding in the EVPN includes: sending, by the PE to another local site or a remote site, where the another local site and the remote site belong to a same EVPN, a unicast packet and a broadcast, unknown unicast, and multicast (BUM) packet that are sent by a local site, and sending, by the PE to the local site, a unicast packet and a BUM packet that are sent by the remote site. Packet forwarding between the local site and the remote site is implemented together by using a public network tunnel and a private network tunnel, where the public network tunnel and the private network tunnel are established between PE devices, the public network tunnel performs packet forwarding between the PEs, and the private network tunnel is used to distinguish different EVIs of a same PE.
In order to send a BUM packet in an EVPN to a destination effectively in a packet forwarding process, an existing PE may implement packet forwarding in the following “ingress replication” manner:
An Ingress PE separately sends BUM traffic sent by one customer site to each of other PEs in a same EVI, that is, each of other PEs in a same EVI is the Egress PE. For example, for a BUM packet sent by Site 1, the PE 1 is an Ingress PE, the PE 2 and the PE 3 are Egress PEs, and the PE 1 separately sends the BUM packet sent by Site 1 to the PE 2 and the PE 3, so as to implement BUM packet forwarding.
In a BUM packet forwarding process, if a multihoming phenomenon exists in an EVPN, not all Egress PEs finally send the BUM packet sent by the Ingress PE to a remote site, which causes a waste of bandwidth in a bearer network.